package com.speakglobe.panelist.model;

import javax.persistence.JoinColumn;
import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
import javax.persistence.OneToOne;

import com.speakglobe.accounting.model.BankDetails;
import com.speakglobe.security.model.User;
import com.speakglobe.security.model.UserInfo;

/**
 * Entity class for Panelist user.
 * 
 * @author ronnie
 *
 */
@Entity
@DiscriminatorValue("panelist")
public class Panelist extends User {

	private static final long serialVersionUID = 655490432501L;
	
	@OneToOne(mappedBy="panelist")
	private PanelistUtility panelistUtility;
	
	@OneToOne(mappedBy="panelist")
	private EWallet panelEWallet;
	
	@OneToOne(mappedBy="panelist")
	private EWallet surveyEWallet;
	
	@OneToOne(mappedBy = "panelist")
	private BinarySpec bianrySpec;
	
	@OneToOne(mappedBy = "panelist")
	private UserInfo userInfo;
	
	@OneToOne(mappedBy = "panelist")
	private BankDetails bankDetails;
	
	public BankDetails getBankDetails() {
		return bankDetails;
	}

	public void setBankDetails(BankDetails bankDetails) {
		this.bankDetails = bankDetails;
	}

	public UserInfo getUserInfo() {
		return userInfo;
	}

	public void setUserInfo(UserInfo userInfo) {
		this.userInfo = userInfo;
	}

	public BinarySpec getBianrySpec() {
		return bianrySpec;
	}

	public void setBianrySpec(BinarySpec bianrySpec) {
		this.bianrySpec = bianrySpec;
	}

	public PanelistUtility getPanelistUtility() {
		return panelistUtility;
	}

	public void setPanelistUtility(PanelistUtility panelistUtility) {
		this.panelistUtility = panelistUtility;
	}

	public EWallet getPanelEWallet() {
		return panelEWallet;
	}

	public void setPanelEWallet(EWallet panelEWallet) {
		this.panelEWallet = panelEWallet;
	}

	public EWallet getSurveyEWallet() {
		return surveyEWallet;
	}

	public void setSurveyEWallet(EWallet surveyEWallet) {
		this.surveyEWallet = surveyEWallet;
	}
	
	
}
